The Constraint Imperative Programming Language Turtle
نویسنده
چکیده
The goal of declarative programming is to provide languages and implementations which let the programmer write programs by specifying what the properties of the desired solutions should be. In imperative languages, the calculation steps leading to the solutions must be programmed explicitly. The programming language Turtle combines traditional imperative language constructs and declarative constraints. This blending of paradigms is called constraint imperative programming in literature, and Turtle is one instance of this multiparadigm approach.
منابع مشابه
Implementing Constraint Imperative Languages with Higher-order Functions
Constraint imperative programming languages combine declarative constraints and imperative language features into an integrated programming language. The language Turtle supports these programming paradigms and additionally integrates functional programming with higher-order functions and algebraic data types. This paper describes the implementation of Turtle, consisting of a compiler, a run-ti...
متن کاملTurtle: A Constraint Imperative Programming Language
Ideally, in constraint programs, the solutions of problems are obtained by specifying their desired properties, whereas in imperative programs, the steps which lead to a solution must be defined explicitly, rather than being derived automatically. This paper deals with the design and implementation of the programming language Turtle, which integrates declarative constraints and imperative langu...
متن کاملTURTLE++ - A CIP-Library for C++
This article introduces the turtle++ library which combines constraint-based and imperative paradigms and enables in this way constraint imperative programming (CIP) with c++. Integrating CIP into c++ allows to exploit the powerful expressiveness of the CIP paradigm within a language widely used and accepted in practice. We discuss the main concepts and implementation and illustrate programming...
متن کاملThe design and implementation of Kaleidoscope'90-A constraint imperative programming language
Two major paradigms in computer programming languages are imperative and declarative programming. We describe a scheme for languages that integrate specific features from these two paradigms into a new framework: Constraint Imperative Programming. Along with the framework, we discuss the design and implementation of a particular instance of this framework, Kaleidoscope’90. From the imperative p...
متن کاملLearning Concurrent Programming: A Constructionist Approach
We present a software environment in which students learn concurrency by programming the behaviour of a set of interacting agents. The language defined puts together the turtle primitives of the Logo language, the classic sequential imperative language constructs and the concurrent ones. It is possible to program a dynamic world in which independent agents interact with one another through the ...
متن کامل